#pragma once
#include <list>
#include "Directx.h"
#include "BackGround.h"
#include "Loadfile.h"
#include "Simon.h"
#include "ListObject.h"
#include "BinaryTree.h"
#include "trace.h"
#include "Listtexture.h"
#include "DynamicManager.h"
#include "whip.h"
#include "Collision.h"
class Global
{
public:
	Global(void);
	~Global(void);
	static Directx			*_Directx;
	static RECT				Screen;
	static BackGround		*BG;
	static Loadfile			*LF;
	static Simon			*SI;
	static whip				*roi;
	static ListObject		*listObj;
	static DynamicManager	*dynamicManager;	
	static Collision		*collision;
	static int				time;
	static DWORD			lastTime;
	static list<Static*>	listBG;
	static list<Static*>	listStaticObj;
	static list<Static*>	listStaticObjRender;
	static BinaryTree		*binaryTree;
	static int				mapWidth;
	static int				mapHeight;
	static int				maplevel;
	static int				mtbg[][176];
	static int				rows, cols;
public:
	static void UpdateScreen();
	static void RestartMap();
	static bool CheckRectInRect( RECT mainRect, RECT checkRect );
	static bool CheckPointInRect( int x, int y, RECT rect );
};